This invention relates generally to embedded devices, and is more particularly directed toward systems and methods for providing audio status communications from an embedded device.
Computer and communication technologies continue to advance at a rapid pace. Indeed, computer and communication technologies are involved in many aspects of a person""s day. For example, many devices being used today by consumers have a small computer inside of the device. These small computers come in varying sizes and degrees of sophistication. These small computers include everything from one microcontroller to a fully-functional complete computer system. For example, these small computers may be a one-chip computer, such as a microcontroller, a one-board type of computer, such as a controller, a typical desktop computer, such as an IBM-PC compatible, etc.
Computers typically have one or more processors at the heart of the computer. The processor(s) usually are interconnected to different external inputs and outputs and function to manage the particular computer or device. For example, a processor in a thermostat may be connected to buttons used to select the temperature setting, to the furnace or air conditioner to change the temperature, and to temperature sensors to read and display the current temperature on a display.
Many appliances, devices, etc., include one or more small computers. For example, thermostats, furnaces, air conditioning systems, refrigerators, telephones, typewriters, automobiles, vending machines, and many different types of industrial equipment now typically have small computers, or processors, inside of them. Computer software runs the processors of these computers and instructs the processors how to carry out certain tasks. For example, the computer software running on a thermostat may cause an air conditioner to stop running when a particular temperature is reached or may cause a heater to turn on when needed.
These types of small computers that are a part of a device, appliance, tool, etc., are often referred to as embedded systems. The term xe2x80x9cembedded systemxe2x80x9d usually refers to computer hardware and software that is part of a larger system. Embedded systems may not have typical input and output devices such as a keyboard, mouse, and/or monitor. Usually, at the heart of each embedded system is one or more processor(s).
As stated, embedded systems may be used to monitor or control many different systems, resources, products, etc. Sometimes embedded systems do not provide sufficient and/or desirable means for generating feedback which can make it difficult to diagnose problems, to report status information, to verify modifications made, etc. Benefits may be realized if embedded systems were enhanced in their ability to provide outputs.
An embedded device configured to provide an audio status output is disclosed. The embedded device includes a processor, an input button in electronic communication with the processor and a speaker in electronic communication with the processor for outputting an audio output. Memory is used for storing data. An audio output generator is stored in the memory and operates to generate the audio status output.
The audio generator receives a generate audio command initiated by a user through use of the input button. The generator then operates to convert status data to audio output data through use of an audio generation table. The audio output data includes multiple distinct audio signals that are machine-decipherable and that correspond to individual data elements of the status data. The audio output data is provided to a speaker such that the audio output based on the audio output data is generated.
In an embodiment disclosed herein, the processor may be a microcontroller. As a result, an embodiment of the embedded device may be a microcontroller-based device. Embedded devices may include many other types of devices including, but not limited to, consumer electronics devices such as a television, DVD player, etc.
The audio output may be embodied in various forms to present audible information. For example, the audio output may comprise DTMF tones.
The status data includes information that may be relevant to the device, such as inputs, outputs, parameters, sensor readings, etc. The status data may include dynamic device-specific input/output data. In addition, the status data may include state data. In certain embodiments, the status data may be comprised of individual data elements. In this embodiment, the audio generation table may include an audio translation for each of the individual data elements.
A system is also disclosed for providing an audio status output describing an embedded device to an audio status collector over a communication network. The system includes an embedded device configured to generate the audio status output and an audio status collector. The audio status collector includes an audio decoder for decoding the audio output. A communications module is used by the audio status collector for connecting to and listening on the communication network. An audio decoding table is used by the audio decoder in decoding the audio output.
Embodiments of the system may use various kinds of communication networks. Possible communication networks include, but are not limited to, telephone networks, cellular telephone networks and radio networks.
A method is disclosed for providing an audio status output describing an embedded device to an audio status collector over a communication network. An embedded device configured to generate the audio status output is provided. The embedded device processes inputs to provide status data that describes operation of the embedded device. A user initiates a generate audio command through use of an input button on the embedded device. The status data is converted to audio output data through use of an audio generation table. The audio output data includes a plurality of distinct audio signals that are machine-decipherable and that correspond to individual data elements of the status data. The audio output data is provided to a speaker of the embedded device such that the audio output based on the audio output data is generated. The audio output is then communicated to an audio status collector via the communication network. An audio decoder of the audio status collector decodes the audio output through use of an audio decoding table to obtain the status data.